using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using Entidades;
public partial class ABMEstadosPostulacion : System.Web.UI.Page
{
	protected void Page_Load(object sender, System.EventArgs e)
	{
		if (!Page.IsPostBack) {
			preparaAlta();
		}
	}
	protected void linkEstadosPostulacion_Click(object sender, System.EventArgs e)
	{
		traerTodos();
	}
	private void traerTodos()
	{
		try {
			grdEstadosPostulacion.DataSource = EstadosPostulacion.TraerTodos();
			grdEstadosPostulacion.DataBind();
		} catch (Exception ex) {
			grdEstadosPostulacion.DataSource = null;
			grdEstadosPostulacion.DataBind();
			LUM.lum.mensaje(ex.Message);
		}
	}
	protected void linkAceptar_Click(object sender, System.EventArgs e)
	{
		try {
			EstadosPostulacion estadospostulacion = new EstadosPostulacion();
			estadospostulacion.IdPostulacion = int.Parse( txtIdPostulacion.Text);
			estadospostulacion.Estado = int.Parse( txtEstado.Text);
			estadospostulacion.Fecha = DateTime.Parse( txtFecha.Text);
			if (ViewState["Id"] == null) {
				estadospostulacion.Alta();
			} else {
				estadospostulacion.Id = int.Parse(ViewState["Id"].ToString());
				estadospostulacion.Modificar();
			}
		} catch (Exception ex) {
			LUM.lum.mensaje(ex.Message);
		} finally {
			blanquearCampos();
		}
	}
	protected void grdEstadosPostulacion_RowDeleting(object sender, System.Web.UI.WebControls.GridViewDeleteEventArgs e)
	{
		try {
			EstadosPostulacion estadospostulacion = new EstadosPostulacion(int.Parse( grdEstadosPostulacion.DataKeys[e.RowIndex].Values["Id"].ToString().ToString()));
			estadospostulacion.Baja();
		} catch (Exception ex) {
			LUM.lum.mensaje(ex.Message);
		}
	}
	protected void grdEstadosPostulacion_SelectedIndexChanged(object sender, System.EventArgs e)
	{
		try {
			preparaModificacion();
			ViewState["Id"] = grdEstadosPostulacion.SelectedDataKey.Values["Id"];
			EstadosPostulacion estadospostulacion = new EstadosPostulacion(int.Parse( ViewState["Id"].ToString()));
			txtIdPostulacion.Text = estadospostulacion.IdPostulacion.ToString();
            txtEstado.Text = estadospostulacion.Estado.ToString();
            txtFecha.Text = estadospostulacion.Fecha.ToString();
		} catch (Exception ex) {
			LUM.lum.mensaje(ex.Message);
		}
	}
	protected void linkNuevo_Click(object sender, System.EventArgs e)
	{
		preparaAlta();
	}
	private void blanquearCampos()
	{
		txtIdPostulacion.Text = "";
		txtEstado.Text = "";
		txtFecha.Text = "";
	}
	private void preparaAlta()
	{
		ViewState.Remove("Id");
		lbl.Text = "Alta de datos";
	}

	private void preparaModificacion()
	{
		lbl.Text = "Modificacion de datos";
	}
}
